

'use strict';

const express = require('express');
const path = require('path');
const xtpl = require('xtpl');
const moment=require('moment');

// 引入数据库文件

const db = require(path.join(__dirname,"../configs/database.js"));

const base = require(path.join(__dirname,"./baseController.js"));

// 课程列表页

module.exports.courseList=function(req,res){

 const page=parseInt(req.query.page||'1');
 const limit=parseInt(req.query.limit||'12');

 const start=(page-1)*limit;

 db.table('course').count("*").then(function(count){

   const totalPage=count%limit==0?count/limit:parseInt(count/limit)+1;

   const totalPageArray=[];
   
   // 页数
   for(var i=1;i<=totalPage;i++){
     totalPageArray.push(i);
   }

   db.table('course').order('course_id DESC').limit(start,limit).select().then(function(data){
  

  xtpl.renderFile(
    path.join(__dirname,"../views/admin/course_list.html"),
    {
       
      array:data,
      totalPage:totalPage,
      totalPageArray:totalPageArray


    },
    function(err,content){
        if(err){
            return console.log(err);
        }
        res.setHeader("Content-Type","text/html;charset=utf-8");
        res.end(content);

    }

    );

   });
 });

};





// 来到课程的添加界面


module.exports.courseAdd = function(req,res){
    xtpl.renderFile(
        path.join(__dirname,"../views/admin/course_add.html"),
        {},
        function(err,content){

            res.setHeader("Content-Type","text/html;charset=utf-8");
            res.end(content);

        }
    );
};

// 数据提交页  如果该课程已经存在 就让重新添加 如果不存在 就接收数据入库

module.exports.courseAddData=function(req,res){

  
 var where=`course_name='${req.body.course_name}'`;
 db.table('course').where(where).find().then(function(data){
    if(JSON.stringify(data) != "{}"){
           res.setHeader("Content-Type","text/html;charset=utf-8");
           res.end("<script>alert('该班级课程存在，请重新添加');location.href='/class/class_add';</script>");
           return false;   
    }else{
          var data={

               "course_name":req.body.course_name,
               "course_price":req.body.course_price,
               "course_time":(Date.parse(moment(req.body.course_time))/1000),

          };
          db.table('course').add(data).then(function(insertId){
              res.redirect('/course/course_list');
              return false;
          }).catch(function(err){
                 if(err){
                 	return console.log(err);
                 }
          });
    }
 });

};

// 编辑页面

module.exports.courseEdite=function(req,res){

   // 显示旧数据
   
   const course_id=req.params.course_id;
   const where=`course_id=${course_id}`;

   db.table('course').where(where).find().then(function(data){
           if(JSON.stringify(data)=="{}"){
              base.showMsg(res,'班级不存在','../views/admin/course_list.html');
              return false;

           }else{
            
              data.course_time=moment(data.course_time*1000).format("YYYY-MM-DD");

          
              xtpl.renderFile(
                 path.join(__dirname,"../views/admin/course_edit.html"),
                 {
                     courseInfo:data
                 },
                 function(err,content){
                    res.setHeader("Content-Type","text/html;charset=utf-8");
                    res.end(content);
                 }

                );
           }
   });
}

//psot数据提交
module.exports.courseEditAdd=function(req,res){
 const course_id=req.params.course_id||0;
 const where=`course_id=${course_id}`;
 db.table('course').where(where).find().then(function(data){
   if(JSON.stringify(data)=="{}"){
       base.shoeMsg(res,'课程不存在','/course/course_list');
       return false;
   }else{
    
     const check=`course_name='${req.body.course_name}' AND course_id !=${course_id}`;
     db.table('course').where(check).find().then(function(data){
            if(JSON.stringify(data)!="{}"){
              base.showMsg(res,'班级已经存在');
              return false;
            }else{
              const data={

               "course_name":req.body.course_name,
               "course_price":req.body.course_price,
               "course_time":(Date.parse(moment(req.body.course_time))/1000),

              };
            
            // 更新数据
            
            db.table('course').where(`course_id=${course_id}`).update(data).then(function(affectRows){

               res.redirect('/course/course_list');
               return false;
            }).catch(function(err){

                 if(err){

                    base.showMsg(res,'更新失败');
                    return false;
                 }

            });

            }

     });   
    
   }

 });

};



module.exports.courseIndent=(req,res)=>{

  let course_id=req.params.course_id||0;
  let where=`course_id=${course_id}`;

  db.table('course').where(where).find().then((data)=>{

  data.course_time=moment(data.course_time*1000).format("YYYY-MM-DD");

   xtpl.renderFile(
    
    path.join(__dirname,"../views/admin/indent_gou.html"),
    {
       
      courseInfo:data

    },
    (err,content)=>{

      if(err){

         return console.log(err);
      }
      res.setHeader("Content-Type","text/html;charset=utf-8");
      res.end(content);

    }



    );



  });


  
   




};


module.exports.courseIndentAdd=(req,res)=>{

  let data={
   "indent_time":req.body.indent_time,
   "indent_name":req.body.indent_name,
   "indent_price":req.body.indent_price,

  };

  db.table('indent').add(data).then((insertId)=>{

    res.redirect('/course/course_list');
    return false;
  }).catch(

      (err)=>{
        if(err){
          return console.log(err);
        }
      }
  );


};






// 课程的删除

module.exports.couserDelete=function(req,res){

  const course_id=req.params.course_id||0;
  const where=`course_id=${course_id}`;
 db.table('course').where(where).delete().then(function(affectRows){
  
  base.showMsg(res,"删除成功","/course/course_list");
  return false;
 }).catch(function(err){

    base.showMsg(res,'删除失败','/course/course_list');
    return false;
 });



}